package face.pay.cpn.cpnmachinfo;

import face.pay.entity.CpnMchInfo;
import face.pay.entity.UserInfo;
import face.pay.util.ResultMessage;

public interface ICpnMachInfoService {
    /**
     * 查询商家卡券进件资料
     *
     * @param loginuser
     * @return
     */
    CpnMchInfo queryCpnMachInfo(UserInfo loginuser);

    /**
     * 上传logo
     *
     * @param fileBytes
     * @param originalFilename
     * @param loginUser
     * @return
     */
    ResultMessage logoUpload(byte[] fileBytes, String originalFilename, UserInfo loginUser);


    /**
     * 物料上传
     *
     * @param fileBytes
     * @param originalFilename
     * @param loginUser
     * @return
     */
    ResultMessage materialUpload(byte[] fileBytes, String originalFilename, String keyName, UserInfo loginUser);

    /**
     * 获取物料
     *
     * @param mediaId
     * @param loginUser
     * @return
     */
    byte[] getMedia(String mediaId, UserInfo loginUser);


    /**
     * 暂存资料
     *
     * @param loginUser
     * @param cpnMchInfo
     * @return
     */
    ResultMessage update(UserInfo loginUser, CpnMchInfo cpnMchInfo);


    /**
     * 获取卡券开放类目
     *
     * @param loginUser
     * @return
     */
    String getapplyprotocol(UserInfo loginUser);

    /**
     * 提交资料到微信
     *
     * @param loginUser
     * @param cpnMchInfo
     * @return
     */
    ResultMessage submit(UserInfo loginUser, CpnMchInfo cpnMchInfo);


    /**
     * 进件失败修改后提交进件
     *
     * @param loginUser
     * @param cpnMchInfo
     * @return
     */
    ResultMessage modifySubmit(UserInfo loginUser, CpnMchInfo cpnMchInfo);
}
